using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.DirectX;
using Microsoft.DirectX.Direct3D;

namespace IngenEngine.Meshes
{
	public class Island : ICustomMeshable
	{
		private string folder;
		private string filename;
		private MeshInformation information;
		private float yaw;
		private float pitch;
		private float roll;
		private float x;
		private float y;
		private float z;
		private float angle;

		public Island(Device device)
		{
			folder = "";
			filename = "blah.x";

			this.information = 
			MeshHelper.LoadMesh(ref device, folder, filename);
			Lighting lighting = new Lighting(ref device);
			lighting.AddLight(device, LightType.Directional, System.Drawing.Color.White, new Vector3(0,-1,-1));
		}

		public void Render()
		{
			this.angle += 0.1f;
		}

		#region Properties
		public MeshInformation MeshInfo
		{
			get { return this.information; }
		}

		public string Folder
		{
			get { return folder; }
		}

		public string FileName
		{
			get { return filename; }
		}

		public float X
		{
			get { return this.x; }
			set { this.x = value; }
		}

		public float Y
		{
			get { return this.y; }
			set { this.y = value; }
		}

		public float Z
		{
			get { return this.z; }
			set { this.z = value; }
		}

		public float Yaw
		{
			get { return this.yaw; }
			set { this.yaw = value; }
		}

		public float Pitch
		{
			get { return this.pitch; }
			set { this.pitch = value; }
		}

		public float Roll
		{
			get { return this.roll; }
			set { this.roll = value; }
		}
		#endregion
	}
}